【レポート】AWSにおけるIoTデータ活用 – 可視化、分析、機械学習 #AWSSummit
データアナリティクス事業本部の貞松です。
本記事は、AWS Summit Online Japanのライブセッションレポートです。 対象セッションは、9/8(火)配信分のTrack5の第6セッション「AWSにおけるIoTデータ活用 - 可視化、分析、機械学習」です。
2020.9.9更新 アーカイブ動画の埋め込みとセッション資料へのリンクを追加しました!
2020.9.10更新 アーカイブ動画とセッション資料へのリンクを修正しました
3行まとめ
- AWS IoTで実現できることやIoT×AI/MLのユースケースも増加しており、IoTデータが従来の産業プロセスを変革しているが、一方で分析もされずに捨てられるデータも多い
- IoTデータを活用するためには、データ収集方法や蓄積先を要件に合わせて適切な構成にする必要がある
- AWSでは、IoTデータにおける機械学習適用のリソースも用意されており、機械学習の知識が浅い場合でもツールやサービスの支援により対応できる
アーカイブ動画&スライド資料
セッションの動画と資料はこちらからご参照ください。
セッションレポート
セッション情報
- カテゴリ: AWSセッション
- セッション番号: AWS-12
- スピーカー: AWSJ 渡邉 聡さん
セッションの構成
- 対象者
- AWSサービス、AWS IoTサービスについてはある程度の理解がある
- これから高度なIoTデータ分析・活用に取り組みたいが、機械学習は言葉を知っている程度
- ゴール
- IoTデバイスから効率的なデータの収集方法、ポイントについて理解できる
- データから新たな洞察を得るにあたり、すぐに利用できるサービス・機能を理解できる
- 含まれない内容
- 各種サービスの細かな仕様や設定などの解説
- IoTデバイスのクラウド側からのコントロール
- 機械学習についての詳しい内容
IoTデータ活用ユースケース
AWSで実現できていること
AWS IoTにフォーカスしたユースケースです。
具体的な事例が示されているわけではないものの、幅広い業種で大小様々な機械・機器を対象として活用されていることが確認できます。
IoT×AI/MLユースケース
一歩機械学習の領域に踏み込んで、IoTとAI/ML関連のサービスを組み合わせたユースケースの紹介です。
分類や予測、異常検知といった機械学習で扱う一般的な課題と紐付けることで現実の課題を解決するアプローチがとられています。
機械・機器の保守の進化
IoTが登場する以前から現在までの機械・機器の保守に関する進化の過程についての解説です。
場当たり的に壊れたら直すというやり方から、徐々に情報を活用しながらメンテナンスタイミングとコストの最適化を図っていることがわかります。
このスライドの図説の通り、最新の技術で予知保全ができるようになったからといって、現在「壊れたら直す」という方法をとっている現場が一足飛びに「予知保全」を導入することはできません。
以降のセクションで解説される「データの利活用プロセス」を理解し、必要なデータの収集、蓄積、分析のプロセスを経て、ようやく活用(予知保全)にたどり着くということを肝に命じておく必要があります。
IoTデータによる産業プロセスの変革
- IoTデータが従来の産業プロセスを変革している
- 一方で収集されたデータの多くが分析もされることなく捨てられ続けている
- 個別にデータが収集されているケース
- データ活用の費用対効果が低い状態になっているケース
IoTデータの利活用プロセス
AI + IoTライフサイクル
AI + IoTの組合せによってIoTデータを活用する為のライフサイクルが示されています。
ここでのポイントは、ほとんどのユーザーがIoTデータを使った予測(などのAI/MLを用いたソリューション)を目指しているにも関わらず、それよりも何段階も前のプロセスに留まっているということです。
この図を見れば、前述で「一足飛びにはできない」と述べた意味がわかりやすいかと思います。活用する為のデータを分析することはおろか、必要なデータを適切に収集・蓄積する基盤がないので、まずはそれらの環境を順番に整えていく必要があります。
上記ライフサイクルに沿って、IoTデータを利活用する為の環境を整備する際に各フェーズで考慮すべき事項は以下の通りです。
- IoTデータの収集
- 解消したい課題に対してデータ収集対象や方法は適切か
- 闇雲にIoTを導入してデータを収集しても、課題に対するデータの集め方が間違っていると無駄にコストが掛かる可能性がある
- 解消したい課題に対してデータ収集対象や方法は適切か
- IoTデータの蓄積
- 保存コストとデータの取り出しやすさのバランスは考えられているか
- 一般的にデータの取り出しやすさを重視すると保存コストも高くなる為、条件に合わせて適切な保存先を検討する必要がある
- 保存コストとデータの取り出しやすさのバランスは考えられているか
- IoTデータの分析
- IoTデータの特徴を理解し、分析に備えられているか
- IoTデータでは、往々にしてノイズのあるデータが入ってきたり、データ量が膨大になる為に保持するデータを部分的に絞り込んだりするケースがある
- データの特性を理解し、事前に加工したり補完しておく必要がある
- IoTデータの特徴を理解し、分析に備えられているか
- IoTデータの活用
- IoTデータを高度に分析する為の環境は検討できているか
- 最終的にデータを価値に変えるアクションをとるための環境準備とIoTデータとの接続から分析までの流れを考慮する必要がある
- IoTデータを高度に分析する為の環境は検討できているか
ユースケース別アーキテクチャ: IoTデータの収集方法
データ収集にあたっての考慮事項
データ収集(転送)にあたっての考慮事項として以下が挙げられます。
- 通信量(料)
- 通信品質
- リアルタイム性
- デバイスリソース
- バッテリー
- セキュリティ
リアルタイム性を重視したアーキテクチャ
IoTデバイスから発生したデータをすぐさまクラウドで確認したい、というリアルタイム性を重視したアーキテクチャです。
メッセージの到達を保証する必要があるか否かでQoSの設定が変わります。
リアルタイム性を重視しないアーキテクチャ
リアルタイム性を重視しない場合は、一定量のデータをまとめて圧縮・転送することでさらにコストを下げることができます。
IoT Coreから取得したセキュリティトークンを用いて、デバイスからS3へのセキュアなアップロードを実行する構成です。
エッジ側にGreengrassを用いることでさらに簡単にセキュアなデータアップロードを実現できます。
また、Greengrass Stream Managerを使用することで、データ収集時にはオンライン・オフラインの状態を意識することなく、オンラインになった時点でアップロードされるような仕組みを構成可能です。
現在対応されている転送先サービスとしては、IoT AnalyticsとKinesis Data Streamsの2つがあります。
ユースケース別アーキテクチャ: IoTデータの蓄積・分析
Hot/Cold Data
パフォーマンスとコストはトレードオフなので、要件に応じて適切な保存先を選択しなければ、必要なパフォーマンスが出なかったり、無駄なコストがかかってしまう可能性があります。
下図は応答速度のパフォーマンスと容量あたりのコストの対比を表すHot/Cold Dataを示しており、各種AWSサービスの位置付けがマッピングされています。
具体的な分析・可視化のアーキテクチャ例
以下、IoTデータの分析・可視化に関する具体的なアーキテクチャ例です。
Elasticsearch Serviceを用いたリアルタイムデータの可視化。可視化する部分はKibanaを想定。
アプリケーション向けに時系列データを保存する為のアーキテクチャ。DynamoDBに対する書き込み部分のLambdaではBatchWriteItem用いることで処理を最適化する想定。
IoT Analyticsを軸にしたアーキテクチャ。データ収集、保存、分析の処理をIoT Analytics一つでまとめることができる。
リアルタイムなデータと長期保存されるデータの処理を併用できるという一例。
ユースケース別アーキテクチャ: IoTデータの活用
IoTデータの高度な活用と機械学習について
- IoTデータを高度に活用する為には機械学習は切っても切れない要素である
- 機械学習にはプログラミングやライブラリ、そもそもの概念やアルゴリズムといった知識が必要
- IoTデータの活用の為に、上記の知識がなければ実施できないかというとそういうわけでもない
- IoTデータに対する機械学習を支援してくれるサービスがあるのでそれらを用いる
IoTデータに対する機械学習を支援する各種サービスの紹介
- Elasticsearch Anomaly Detection
- Elasticsearch 7.4以降で利用可能
- ランダムカットフォレストを用いた異常検知
- QuickSight ML Insights
- Enterprise Editionで利用可能
- MLベースの異常検知、予測が可能
- IoT Analytics Sample Template
- 機械学習モデルを含むノートブックテンプレート
- 異常検知、予測、クラスタリングなど
- Greengrass ML Inference
- クラウド上でのトレーニング
- エッジデバイスでの推論
- 具体的なアーキテクチャは下図参照
セッションに対する所感・考察
IoTデータの分析や機械学習の適用部分のみにフォーカスするのではなく、データ収集・蓄積の必要性から方法論に至るまで順序立てて解説されており、非常に満足感の高い、ボリューミーなセッションでした。
また、具体的なアーキテクチャの例示が多く、実践投入に際してそのまま参考にできそうな内容だと思います。
まとめ
今回のAWS Summit Online Japanのデータ分析や機械学習関連セッションについて、分析や機械学習以前の部分についての必要性を説く内容が多く含まれており、実務でデータを扱う身としては非常に心強く思います。
9/9(火)もライブセッションが配信されますし、オンデマンド配信は9/30(水)までありますので、他のデータ分析・機械学習セッションにも期待が高まります。
Developers.IOでは、AWS Summit Online Japanに関する記事が順次アップされますので、他セッションの情報についてもご参照いただけると幸いです。